MATHCHECK: A Math Assistant via a Combination of Computer Algebra Systems and SAT Solvers
نویسندگان
چکیده
We present a method and an associated system, called MATHCHECK, that embeds the functionality of a computer algebra system (CAS) within the inner loop of a conflict-driven clause-learning SAT solver. SAT+CAS systems, a la MATHCHECK, can be used as an assistant by mathematicians to either counterexample or finitely verify open universal conjectures on any mathematical topic (e.g., graph and number theory, algebra, geometry, etc.) supported by the underlying CAS system. Such a SAT+CAS system combines the efficient search routines of modern SAT solvers, with the expressive power of CAS, thus complementing both. The key insight behind the power of the SAT+CAS combination is that the CAS system can help cut down the search-space of the SAT solver, by providing learned clauses that encode theory-specific lemmas, as it searches for a counterexample to the input conjecture. We demonstrate the efficacy of our approach on a long-standing open conjecture regarding matchings of hypercubes.
منابع مشابه
MathCheck2: A SAT+CAS Verifier for Combinatorial Conjectures
In this paper we present MathCheck2, a tool which combines sophisticated search procedures of current SAT solvers with domain specific knowledge provided by algorithms implemented in computer algebra systems (CAS). MathCheck2 is aimed at finitely verifying or finding counterexamples to mathematical conjectures, building on our previous work on the MathCheck system. Using MathCheck2 we validated...
متن کاملFormalization of Abstract State Transition Systems for SAT
We present a formalization of modern SAT solvers and their properties in a form of abstract state transition systems. SAT solving procedures are described as transition relations over states that represent the values of the solver’s global variables. Several different SAT solvers are formalized, including both the classical DPLL procedure and its state-of-the-art successors. The formalization i...
متن کاملBenchmarking Solvers, SAT-style
The SAT community, and hence the SMT community, have substantial experience in benchmarking solvers against each other on large sample sets, and publishing summaries, whereas the computer algebra community tends to time solvers on a small set of problems, and publishing individual times. This paper aims to document the SAT community practice for the benefit of the computer algebra community. Im...
متن کاملFormal Correctness Proof for DPLL Procedure
The DPLL procedure for the SAT problem is one of the fundamental algorithms in computer science, with many applications in a range of domains, including software and hardware verification. Most of the modern SAT solvers are based on this procedure, extending it with different heuristics. In this paper we present a formal proof that the DPLL procedure is correct. As far as we know, this is the f...
متن کاملA Verified Decision Procedure for Pseudo-Boolean Formulas
Pseudo-Boolean formulas consist of constraints of the form ∑i=1 wi · xi k, where xi are propositional literals, wi ∈ Z, k ∈ Z, and arise in planning, scheduling and optimization problems. We describe an efficient and easily verifiable decision procedure for pseudo-Boolean formulas, that is based on encoding PB formulas into the propositional satisfiability problem with the cutting-edge sequenti...
متن کامل